﻿using System;
using System.Reflection;

namespace EmitDebugging.Tests.Extensions
{
	internal sealed class MockMethodBase : MethodBase
	{
		public override ParameterInfo[] GetParameters()
		{
			throw new NotSupportedException();
		}

		public override MethodAttributes Attributes
		{
			get
			{
				throw new NotImplementedException();
			}
		}

		public override MethodImplAttributes GetMethodImplementationFlags()
		{
			throw new NotImplementedException();
		}

		public override object Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, System.Globalization.CultureInfo culture)
		{
			throw new NotImplementedException();
		}

		public override RuntimeMethodHandle MethodHandle
		{
			get
			{
				throw new NotImplementedException();
			}
		}

		public override Type DeclaringType
		{
			get
			{
				throw new NotImplementedException();
			}
		}

		public override object[] GetCustomAttributes(Type attributeType, bool inherit)
		{
			throw new NotImplementedException();
		}

		public override object[] GetCustomAttributes(bool inherit)
		{
			throw new NotImplementedException();
		}

		public override bool IsDefined(Type attributeType, bool inherit)
		{
			throw new NotImplementedException();
		}

		public override MemberTypes MemberType
		{
			get
			{
				throw new NotImplementedException();
			}
		}

		public override string Name
		{
			get
			{
				throw new NotImplementedException();
			}
		}

		public override Type ReflectedType
		{
			get
			{
				throw new NotImplementedException();
			}
		}
	}
}
